1. Field of the Invention
This invention is in the field of telecommunications, as it relates to interactive, multi-player computer games played in real time on interconnected computers, such as computers in networks such as the Internet.
2. Description of the Related Art
Since their inception computer games have experienced enormous growth in popularity and sophistication. From the very first video games to those of today, many video games have been designed to be played by two or more players simultaneously. In recent years, advances in computer technology have fueled an explosive growth in digital electronic games. The latest digital electronic games combine three dimensional (3D) graphics with special effects sounds to make playing the games a realistic experience for the players. Advances in computer technology have also allowed the proliferation of inter-networks. Current technology provides a platform for the play of multi-player electronic games whereby two or more players can play a game together via a network interconnecting the users. The network may be a high speed local-area-network (LAN) or a wide-area-network (WAN).
In using the Internet for digital electronic game playing, players from remote locations who have computers equipped for digital electronic game playing can share in a single game, which increases the pool of able and willing players for a game. However, one drawback is that the pool of players typically connect to the Internet through one of a multiplicity of different connections including: digital subscriber lines (DSL), twisted-pair cable, integrated services digital network (ISDN) link, Internet Protocol (IP)/Transmission Control Protocol (TCP) communications, satellite links, 10/100BaseT. Each such connection has associated therewith a characteristic link latency. In general, latency is a measure of a typical message""s transit time between two Internet nodes. Accordingly, a lower latency measurement translates to a higher quality connection or link. As an example, an ISDN link or a DSL link will typically support communications with lower latency than a twisted-pair cable.
In general, there are two types of remote multi-player games, xe2x80x9ctwitchxe2x80x9d games and xe2x80x9cnon-real-timexe2x80x9d games. In the context of real-time games, latency becomes an important attribute for the real-time play of xe2x80x9ctwitchxe2x80x9d games. Twitch games are games that require split-second game control by players and cannot tolerate arbitrary communication latencies or delays. Twitch games are by far the most popular category of retail video games-some popular twitch games include xe2x80x9cDoomxe2x80x9d(trademark), xe2x80x9cMortal Kombat(trademark), xe2x80x9cJohn Madden Football(trademark),xe2x80x9d xe2x80x9cSonic the Hedgehog(trademark),xe2x80x9d and xe2x80x9cSuper Mario Brothers(trademark)xe2x80x9d. Typically, twitch games require less than 100 millisecond communications latency (i.e. delay for a player""s action to take effect on the screen) in order for the games to be playable. In addition, twitch games usually cannot tolerate varying delays in communications latency. Non-real-time games are games that are possible to play with substantial communications latency and with varying communications latency. Obvious games in this genre are xe2x80x9cstrategyxe2x80x9d games such a chess and backgammon, but there are also certain action games such as adventure games like xe2x80x9cReturn to Zork(trademark).xe2x80x9d by Activision(trademark) or the xe2x80x9cKing""s Quest(trademark)xe2x80x9d series from Sierra On-line(trademark).
The different latencies between users can create a number of problems to real time and, at times, non real time games. In particular, players having different latencies can experience different results due to the latencies. For example, a low latency player may take an action with respect to a high latency player, and the high latency player may then take an inconsistent action before experiencing the action of the high latency player. Certain efforts have been made in the Prior Art to overcome the varying delays in communication latency. For example, to improve the quality of the communications links between the players computers, one Prior Art commercial game system requires specially designed modems to establish point-to-point telephone links with low latency between players. This method may be non-optimal because it requires the player to have specially designed modems and links which significantly narrows the pool of candidate players.
Other known methods describe methods for communicating state changes to those players in the immediate vicinity of a player for whom the state change occurs. In particular, U.S. Pat. No. 6,025,801 to Brad Beitel, incorporated in its entirety herein by reference, describes a method which allows a server to keep track of where each player is in the virtual environment, and to have messages sent to those players close by to the location, in the virtual environment, of the origin of the state change. For each specific one of the users a change as to a state, associated with the specific user, is transmitted to one or more other users dependent on respective relative distances in the virtual environment between the specific user and each respective one of the other users. Such a technique could allow a virtual environment to scale indefinitely, at the expense of complexity in state caching. However, this technique suffers from the disadvantage that, only the server has the complete and true state of the virtual environment.
An object of the present invention is to provide latency compensating mechanisms to allow high-latency participants in multi-user interactive play to be able to effectively compete with low-latency participants in such games. Briefly stated, the foregoing and other objects are accomplished by the present invention, which provides a method of and system for compensating for high-latency participants (i.e., players) of real-time games. The present invention meets the above need with a method to compensate for the effects of latency experienced by high-latency game participants in a real-time game by providing such participants with compensating advantages such as, for example, improved shielding, invulnerability, invisibility, insubstantiality, and so on.
In accordance with one embodiment of the present invention, at a pre-game design stage, one or more latency threshold values are determined to be used as benchmarks against which the measured latency of players during the play of a real-time multi-player game. Next, during the play of a real-time game, a control loop is executed in which at each iteration, a latency value is measured for each game participant (i.e., client computer). Players are categorized as low or high latency participants in accordance with their measured latency values at each iteration. For those players categorized as high-latency participants, the server provides such high-latency participants with one or more compensating advantages, such as those described above, to neutralize the disadvantages associated with being a high latency participant. Further, high-latency participants may be further distinguished or classified in accordance with the degree of latency. For example, for those participants exhibiting a moderate degree of latency, a single compensating advantage may be employed, and for those participants exhibiting very high latency, two or more compensating advantages may be employed.
Generally, in accordance with the method of the present invention, a latency value is determined for a plurality of computer clients operating said plurality of terminals; a latency compensation factor is determined from the determined latency value for each of said plurality of computer clients; and a playing modality for at least one of said plurality of computer clients is adjusted in response to said determined latency compensation factor. Playing modalities include a feature or characteristic of the game pertaining to a computer client. For example, modalities include a player visibility, speed, life force, maneuverability, protection, strength, firepower, traction, grip and aiming capacity.
In accordance with another embodiment of the present invention, no threshold values are computed, instead compensation is applied as a continuous function of the measured latency value. In this case, the function could be linear or non-linear dependent upon the particular application.
The system of the present invention for compensating for high-latency participants (i.e., players) of real-time games comprises: 1) a network; 2) a plurality of client computers coupled or previously coupled to the network; and 3) a server coupled to the network, wherein the server performs a latency measurement for each of said plurality of client computers; and provides a latency compensating factor for those players (i.e., client computers) for high-latency participants. This may be done, for example, by software, hardware, firmware in the server, or a combination thereof that supports such processing.